package aiRequestHandler

import (
	"AiSpeaker/internal/domain"
)

var GlobalAiRequestHandlerMap = make(map[string]RequestHandler)

func init() {
	GlobalAiRequestHandlerMap["face"] = &FaceReceiveHandler{}
	GlobalAiRequestHandlerMap["facewithbehavior"] = &FaceWithBehaviorReceiveHandler{}
	GlobalAiRequestHandlerMap["behavior"] = &BehaviorReceiveHandler{}
	GlobalAiRequestHandlerMap["crowddensity"] = &CrowdDensityReceiveHandler{}
	GlobalAiRequestHandlerMap["motorcommodity"] = &MotorCommodityReceiveHandler{}
	GlobalAiRequestHandlerMap["passengernumber"] = &PassengerNumberReceiveHandler{}
	GlobalAiRequestHandlerMap["absence"] = &AbsenceReceiveHandler{}
	GlobalAiRequestHandlerMap["dogalarm"] = &DogAlarmReceiveHandler{}
	GlobalAiRequestHandlerMap["peoplecount"] = &PeopleCountReceiveHandler{}
	GlobalAiRequestHandlerMap["peoplecountbyarea"] = &PeopleCountByAreaReceiveHandler{}
}

type RequestHandler interface {
	Handler(aiBoxRequest *domain.AiBoxRequest, aiType string, speakerId string)
}
